--
-- Menu Text: Monitoring
--
TitanCattleProd_MENU_TEXT_MONITORING = "TitanCattleProd_MENU_TEXT_MONITORING";

--
-- Menu Text: Stopped
--
TitanCattleProd_MENU_TEXT_STOPPED = "TitanCattleProd_MENU_TEXT_STOPPED";

--
-- Menu Text: Automatic
--
TitanCattleProd_MENU_TEXT_AUTOMATIC = "TitanCattleProd_MENU_TEXT_AUTOMATIC";

--
-- Menu Text: Manual
--
TitanCattleProd_MENU_TEXT_MANUAL = "TitanCattleProd_MENU_TEXT_MANUAL";

--
-- Option: Configure
--
TitanCattleProd_OPTION_CONFIGURE = "TitanCattleProd_OPTION_CONFIGURE";

--
-- Option: Report Leeches
--
TitanCattleProd_OPTION_REPORT_LEECHES = "TitanCattleProd_OPTION_REPORT_LEECHES";

--
-- Option: Check Defending
--
TitanCattleProd_OPTION_CHECK_DEFENDING = "TitanCattleProd_OPTION_CHECK_DEFENDING";

--
-- Setting: True
--
TitanCattleProd_SETTING_TRUE = "TitanCattleProd_SETTING_TRUE";

--
-- Setting: False
--
TitanCattleProd_SETTING_FALSE = "TitanCattleProd_SETTING_FALSE";

--
-- Settings: Header
--
TitanCattleProd_SETTINGS_HEADER = "TitanCattleProd_SETTINGS_HEADER";

--
-- Settings: Report Players AFK
--
TitanCattleProd_SETTINGS_REPORT_PLAYERS_AFK = "TitanCattleProd_SETTINGS_REPORT_PLAYERS_AFK";

--
-- Settings: Required Effort
--
TitanCattleProd_SETTINGS_REQUIRED_EFFORT = "TitanCattleProd_SETTINGS_REQUIRED_EFFORT";

-- Settings: Report Known Leeches
--
TitanCattleProd_SETTINGS_REPORT_KNOWN_LEECHES = "TitanCattleProd_SETTINGS_REPORT_KNOWN_LEECHES";

--
-- enUS Strings
--
TitanCattleProd_Strings_enUS = {
	[TitanCattleProd_MENU_TEXT_MONITORING] = "CattleProd: " .. TITAN_CATTLE_PROD_COLOR_GREEN .. "Monitoring" .. TITAN_CATTLE_PROD_COLOR_RESET,
	[TitanCattleProd_MENU_TEXT_STOPPED] = "CattleProd: " .. TITAN_CATTLE_PROD_COLOR_RED .. "Stopped" .. TITAN_CATTLE_PROD_COLOR_RESET,
	[TitanCattleProd_MENU_TEXT_AUTOMATIC] = "CattleProd: " .. TITAN_CATTLE_PROD_COLOR_WHITE .. "Automatic" .. TITAN_CATTLE_PROD_COLOR_RESET,
	[TitanCattleProd_MENU_TEXT_MANUAL] = "CattleProd: " .. TITAN_CATTLE_PROD_COLOR_WHITE .. "Manual" .. TITAN_CATTLE_PROD_COLOR_RESET,

	[TitanCattleProd_OPTION_CONFIGURE] = "Configure",
	[TitanCattleProd_OPTION_REPORT_LEECHES] = "Report Leeches",
	[TitanCattleProd_OPTION_CHECK_DEFENDING] = "Check Defending",

	[TitanCattleProd_SETTING_TRUE] = TITAN_CATTLE_PROD_COLOR_GREEN .. "True" .. TITAN_CATTLE_PROD_COLOR_RESET,
	[TitanCattleProd_SETTING_FALSE] = TITAN_CATTLE_PROD_COLOR_RED .. "False" .. TITAN_CATTLE_PROD_COLOR_RESET,
	[TitanCattleProd_SETTINGS_HEADER] = TITAN_CATTLE_PROD_COLOR_WHITE .. "Settings" .. TITAN_CATTLE_PROD_COLOR_RESET,
	[TitanCattleProd_SETTINGS_REPORT_PLAYERS_AFK] = "%s\n" .. TITAN_CATTLE_PROD_COLOR_YELLOW .. "Report Players AFK:" .. TITAN_CATTLE_PROD_COLOR_RESET .. "\t %s",
	[TitanCattleProd_SETTINGS_REQUIRED_EFFORT] = "%s\n" .. TITAN_CATTLE_PROD_COLOR_YELLOW .. "Required Effort:" .. TITAN_CATTLE_PROD_COLOR_RESET .. "\t %d%%",
	[TitanCattleProd_SETTINGS_REPORT_KNOWN_LEECHES] = "%s\n" .. TITAN_CATTLE_PROD_COLOR_YELLOW .. "Report Known Leeches:" .. TITAN_CATTLE_PROD_COLOR_RESET .. "\t %s",
}

--
-- deDE Strings
--
TitanCattleProd_Strings_deDE = {
	[TitanCattleProd_MENU_TEXT_MONITORING] = "CattleProd: " .. TITAN_CATTLE_PROD_COLOR_GREEN .. "Monitoring" .. TITAN_CATTLE_PROD_COLOR_RESET,
	[TitanCattleProd_MENU_TEXT_STOPPED] = "CattleProd: " .. TITAN_CATTLE_PROD_COLOR_RED .. "Stopped" .. TITAN_CATTLE_PROD_COLOR_RESET,
	[TitanCattleProd_MENU_TEXT_AUTOMATIC] = "CattleProd: " .. TITAN_CATTLE_PROD_COLOR_WHITE .. "Automatic" .. TITAN_CATTLE_PROD_COLOR_RESET,
	[TitanCattleProd_MENU_TEXT_MANUAL] = "CattleProd: " .. TITAN_CATTLE_PROD_COLOR_WHITE .. "Manual" .. TITAN_CATTLE_PROD_COLOR_RESET,

	[TitanCattleProd_OPTION_CONFIGURE] = "Configure",
	[TitanCattleProd_OPTION_REPORT_LEECHES] = "Report Leeches",
	[TitanCattleProd_OPTION_CHECK_DEFENDING] = "Check Defending",

	[TitanCattleProd_SETTING_TRUE] = TITAN_CATTLE_PROD_COLOR_GREEN .. "True" .. TITAN_CATTLE_PROD_COLOR_RESET,
	[TitanCattleProd_SETTING_FALSE] = TITAN_CATTLE_PROD_COLOR_RED .. "False" .. TITAN_CATTLE_PROD_COLOR_RESET,
	[TitanCattleProd_SETTINGS_HEADER] = TITAN_CATTLE_PROD_COLOR_WHITE .. "Settings" .. TITAN_CATTLE_PROD_COLOR_RESET,
	[TitanCattleProd_SETTINGS_REPORT_PLAYERS_AFK] = "%s\n" .. TITAN_CATTLE_PROD_COLOR_YELLOW .. "Report Players AFK:" .. TITAN_CATTLE_PROD_COLOR_RESET .. "\t %s",
	[TitanCattleProd_SETTINGS_REQUIRED_EFFORT] = "%s\n" .. TITAN_CATTLE_PROD_COLOR_YELLOW .. "Required Effort:" .. TITAN_CATTLE_PROD_COLOR_RESET .. "\t %d%%",
	[TitanCattleProd_SETTINGS_REPORT_KNOWN_LEECHES] = "%s\n" .. TITAN_CATTLE_PROD_COLOR_YELLOW .. "Report Known Leeches:" .. TITAN_CATTLE_PROD_COLOR_RESET .. "\t %s",
}

--
-- frFR Strings
--
TitanCattleProd_Strings_frFR = {
	[TitanCattleProd_MENU_TEXT_MONITORING] = "CattleProd: " .. TITAN_CATTLE_PROD_COLOR_GREEN .. "Monitoring" .. TITAN_CATTLE_PROD_COLOR_RESET,
	[TitanCattleProd_MENU_TEXT_STOPPED] = "CattleProd: " .. TITAN_CATTLE_PROD_COLOR_RED .. "Stopped" .. TITAN_CATTLE_PROD_COLOR_RESET,
	[TitanCattleProd_MENU_TEXT_AUTOMATIC] = "CattleProd: " .. TITAN_CATTLE_PROD_COLOR_WHITE .. "Automatic" .. TITAN_CATTLE_PROD_COLOR_RESET,
	[TitanCattleProd_MENU_TEXT_MANUAL] = "CattleProd: " .. TITAN_CATTLE_PROD_COLOR_WHITE .. "Manual" .. TITAN_CATTLE_PROD_COLOR_RESET,

	[TitanCattleProd_OPTION_CONFIGURE] = "Configure",
	[TitanCattleProd_OPTION_REPORT_LEECHES] = "Report Leeches",
	[TitanCattleProd_OPTION_CHECK_DEFENDING] = "Check Defending",

	[TitanCattleProd_SETTING_TRUE] = TITAN_CATTLE_PROD_COLOR_GREEN .. "True" .. TITAN_CATTLE_PROD_COLOR_RESET,
	[TitanCattleProd_SETTING_FALSE] = TITAN_CATTLE_PROD_COLOR_RED .. "False" .. TITAN_CATTLE_PROD_COLOR_RESET,
	[TitanCattleProd_SETTINGS_HEADER] = TITAN_CATTLE_PROD_COLOR_WHITE .. "Settings" .. TITAN_CATTLE_PROD_COLOR_RESET,
	[TitanCattleProd_SETTINGS_REPORT_PLAYERS_AFK] = "%s\n" .. TITAN_CATTLE_PROD_COLOR_YELLOW .. "Report Players AFK:" .. TITAN_CATTLE_PROD_COLOR_RESET .. "\t %s",
	[TitanCattleProd_SETTINGS_REQUIRED_EFFORT] = "%s\n" .. TITAN_CATTLE_PROD_COLOR_YELLOW .. "Required Effort:" .. TITAN_CATTLE_PROD_COLOR_RESET .. "\t %d%%",
	[TitanCattleProd_SETTINGS_REPORT_KNOWN_LEECHES] = "%s\n" .. TITAN_CATTLE_PROD_COLOR_YELLOW .. "Report Known Leeches:" .. TITAN_CATTLE_PROD_COLOR_RESET .. "\t %s",
}

--
-- Localized Strings
--
TitanCattleProd_Strings = nil;

--
-- Set StringsLocale.
--
function TitanCattleProd_SetStringsLocale()
	local locale = GetLocale();
	
	if (locale == "deDE")
	then
		-- german
		TitanCattleProd_Strings = TitanCattleProd_Strings_deDE;
	elseif (locale == "frFR")
	then
		-- french
		TitanCattleProd_Strings = TitanCattleProd_Strings_frFR;
	else
		-- us english
		TitanCattleProd_Strings = TitanCattleProd_Strings_enUS;
	end
end

--
-- Get localized string for key.
--
-- key Localization Key
--
-- return Localized String
--
function TitanCattleProd_LocaleString(key)
    if (TitanCattleProd_Strings == nil)
    then
        TitanCattleProd_SetStringsLocale();
    end

    local string = TitanCattleProd_Strings[key];

    return string;
end
